1. Field of the invention
The present invention relates to transfer of data between two information processing devices, and more particularly to a method and system for transferring data to be searched such as phone directory data.
2. Description of the Related Art
There has been proposed a data transfer method for transferring phone directory data from a mobile telephone to another mobile telephone, for example, one which has been newly bought, in Japanese Patent Application Laid-Open Publication No. 9-284379. The phone directory data that has theretofore been accumulated can be easily used in a new mobile telephone without manually inputting the data again.
In general, phone directory data includes approximately 100 to 700 entries in a single mobile telephone. And with respect to one name are allotted a plurality of telephone numbers, for example, of his company, his home, and his FAX, and the like. Recently, e-mail addresses have been also included, with the result that the level of convenience has increased while, on the other hand, it is considered that the amount of data will increase more and more in the future. Such a large amount of phone directory data becomes useful data only after search processing has been performed thereon. However, in order to perform search processing with a high speed, it is necessary to use a large capacity of cash memory or a command system that makes it easy to process strings of character.
As well known, in the mobile communication device such as a mobile telephone, since the long-term use thereof is intended to be realized, it is difficult to increase the power of the processor (CPU) up to a level that is higher than the required level. Concretely, when selecting the CPU, the cash memory is regarded as not being preferable because of its size, cost, and power consumption. The character-string processing is extremely less often used compared to the communication protocol and therefore in many cases has such a processing function deleted. For this reason, the search processing for managing a phone directory imposes a large burden on the CPU and so this search processing cannot be completed in a short period of time.
On this account, there has been generally adopted a method wherein a search table is provided in units of an object area of the phone directory data to be searched. More specifically, each time the phone directory data is updated, these search tables are newly re-arranged: and when a display is made, the phone directory data is read out according to the sequential order of the search table data and the read-out data is displayed on the screen. An example of the method such that high-speed search is performed by providing search tables for use on search is disclosed in Japanese Patent Application Laid-Open Publication No. 8-101843.
In the case where a user manually input phone directory data on a case-by-case basis, the CPU can produce search tables with a sufficiently high speed. However, in the case of phone directory data collectively received from another information processing device, the processing load of the CPU on the receiving side becomes extremely large because the speed of inputting is a lot higher than that of manual inputting and the amount of data is also larger. Therefore, even after transfer of data, the CPU is partly occupied because of producing search tables. As a result of this, a delay occurs in the execution of the communication processing that the CPU should perform. When viewed from the user""s side, it may be such a delay in responding to the user""s operation that the user""s patience is exhausted.
An object of the present invention is to provide a data transfer method and system that can transfer data to be searched from one device to another device at a high speed without excessively increasing in burden on the receiving side.
According to the present invention, a method for transferring a plurality of units of data to be searched from a first device to a second device through an interface, each of the first and second devices having a search function, the method comprising the steps of: a) storing the plurality of units of data in the first device; b) determining whether the second device currently has processing power enough large to produce a desired search table from the plurality of units of data; and c) transferring the plurality of units of data from the first device to the second device in such a way that the desired search table is added to the plurality of units of data when the second device does not currently have the processing power enough large to produce the desired search table from the plurality of units of data.
According to the present invention, the first device comprises: a first storage for storing the plurality of units of data; a first searcher for producing a desired search table from the plurality of units of data in response to a search table production request from the second device: and a first data processor for transmitting the plurality of units of data to the second device when the search table production request has not been received and transmitting the plurality of units of data having the search table added thereto when the search table production request has been received. The second device comprises: a second storage for storing the plurality of units of data; a second searcher for producing a desired search table from the plurality of units of data stored in the second storage; and a second data processor for determining whether processing power is currently enough large to produce a desired search table from the plurality of units of data to be received from the first device, transmitting the search table production request to the first device to receive the plurality of units of data having the desired search table added thereto when the second device does not currently have the processing power enough large to produce the desired search table from the plurality of units of data.
As described above, according to the present invention, in the case where transferring data from the first device to the second device, it is determined whether the second device has processing power large enough to produce a desired search table. If there is sufficient processing power in the second device, the data is transferred as it is to the second device. If there is not sufficient processing power, a desired search table is produced at the first device and data having the produced search table added thereto is transferred to the second device. In this way, by leaving the production of search tables to the first device as necessary, it is possible to avoid an excessive load on the second device and thereby an undesired delay in other processing at the second device can be eliminated.
Whether the second device has the enough processing power can be determined by measuring the occupied time period or idle time period of the processor (such as a CPU) of the second device. Since the idle time period of the processor momentarily changes, it is desirable to perform this decision at the time when transfer of data is about to be performed from the first device to the second device.
Preferably, the second device is a mobile communication device such as a mobile telephone. This is because such a mobile device is intended to have promoted its miniaturization and the decrease in its power consumption and therefore inputting of data is not easy compared to an ordinary computer such as a notebook computer and desk-top computer. Therefore, in general, the processing power of the processor provided in the mobile communication device is not enough to do search processing while doing other communication processing.